package com.china08.yxyapi.entity.db.questionbank;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.china08.yxyapi.entity.BaseEntityNoId;

/**
 * 
 * 
 * 题库: 试题信息
 *
 */
@SuppressWarnings("serial")
@Entity
@Table(name = "yxy_quesbank_questions", catalog = "yxy_question_bank")
public class YxyQuesbankQuestions extends BaseEntityNoId {

	/**
	 * 试题id
	 */
	@Id
	@Column(length = 32)
	private String id;

	@Column(columnDefinition = "varchar(10) comment '学段：1，小学；2，初中；3，高中' ")
	private String stage;

	@Column
	private String stageName;

	@Column(columnDefinition = "varchar(10) comment '科目：2，语文；3，数学；4，英语；5，科学；6，物理；7，化学；8，历史；9，政治思品；10，地理；11，生物；20，历史与社会' ")
	private String subject;

	@Column
	private String subjectName;

	/**
	 * 难度级别 123
	 */
	@Column(columnDefinition = "varchar(10) comment '难度：1:容易,2:较易,3:普通,4:较难,5:困难' ")
	private String difficultyLevel;

	/**
	 * 难度系数0-1浮点
	 */
	@Column
	private Float difficultyXishu;

	@Column(columnDefinition = "varchar(10) comment '题型：1:单选题,2:多选题,3:判断题,4:填空题,5:计算题,6:解答题,7:完型填空,8:阅读理解,10:语言表达,9:问答题,11:名著导读,12:句型转换,13:翻译,14:改错题,15:选词填空,16:文言文阅读,17:现代文阅读,18:连词成句,19:默写,20:诗歌鉴赏,21:辨析题,22:补全对话,23:任务型阅读,24:单词拼写,25:作图题,26:探究题,27:材料分析题,28:综合题,29:实验题,30:连线题,36:应用题,35:其他题型,34:书写,33:书面表达,32:写作题,31:列举题,37:选择题' ")
	private String quesType;// 试题类型

	@Column(columnDefinition = "varchar(10) comment '类型：1:真题,2:常考题,3:易错题,4:好题,5:压轴题,6:听力题,7:模拟题' ")
	private String examType;// 试题类型

	@Column
	private Integer knowNum;// 知识点个数

	@Column(columnDefinition = "varchar(10) comment '适用年级：1:一年级,2:二年级,3:三年级,4:四年级,5：五年级,6:六年级,7:七年级,8:八年级,9:九年级,10:高一,11:高二,12:高三' ")
	private String gradeId; // 适用年级
	@Column
	private String source;// 试题来源

	@Column(length = 255)
	private String knowIds;// 知识点id,使用","拼接

	// ***********************

	@Column(columnDefinition = "text comment '试题body,将关于试题的字段转换成json存储' ")
	private String quesBody;// 试题body,将以下字段转换成json存储

	// @Column(columnDefinition = " text ")
	// private String quesTitle;// 试题标题

	// @Column
	// private String quesText;// 试题题干

	// @Column
	// private String quesExplanation;// 试题解析

	// @Column(columnDefinition = "text comment '' ")
	// private String quesPicAnswer;

	// @Column(columnDefinition = "text comment '' ")
	// private String quesPicExplanation;

	// @Column
	// private String quesOptions;// 试题选项

	// @Column
	// private String quesAnswer;// 试题答案

	// @Column
	// private String quesTags;// 试题标签

	// @Column
	// private String quesAnswerJson;

	// ***********************************

	@Column
	private String quesYear;// 试题年份

	@Column(columnDefinition = "tinyint default 0 comment '是否有子试题：0，没有；1，有' ")
	private Integer hasChild;

	/**
	 * 是否删除
	 */
	@Column
	private Integer isDelete = 0;

	// 2017.12.25 Richard.Wang, 将Foundation和questionBank进行合并

	@Column(columnDefinition = "int comment '试题来源:0-抓取(提分宝);1-foundtion;2-购买 ' ")
	private Integer quesSource = 0;

	@Column(columnDefinition = "varchar(256) comment '试题知识点,使用,号进行分割' ")
	private String knowIdsFoun;

	@Column(columnDefinition = "varchar(256) comment '试题全路径' ")
	private String knowFullIdsFoun;

	@Column(columnDefinition = "varchar(2) comment '学段' ")
	private String stageFoun;

	@Column(columnDefinition = "varchar(32) comment '学段名称' ")
	private String stageNameFoun;

	@Column(columnDefinition = "varchar(32) comment '学科' ")
	private String subjectFoun;

	@Column(columnDefinition = "varchar(32) comment '学科名称' ")
	private String subjectNameFoun;

	@Column(columnDefinition = "varchar(32) comment '创建者id' ")
	private String createdUserId;

	@Column(columnDefinition = "datetime comment '创建时间' ")
	private Date createdTime;

	@Column(columnDefinition = "varchar(32) comment '审核者id' ")
	private String auditUserId;

	@Column(columnDefinition = "datetime comment '审核时间' ")
	private Date auditTime;

	@Column(columnDefinition = "int default 1 comment '状态: -1:不合格;0:未标记;1-合格;2-精品' ")
	private Integer status = 1;

	@Column(columnDefinition = "int default 0 comment '是否同步' ")
	private Integer isSync = 0;

	@Column(columnDefinition = "int default 0 comment '是否同步comp专用' ")
	private Integer isCompSync = 0;

	@Column(columnDefinition = "bigint default 0 comment '使用次数' ")
	private Long usedCount = 0l;

	/**
	 * 收藏次数
	 */
	@Column(columnDefinition = "bigint default 0 comment '收藏次数' ")
	private Long favoriteCount = 0l;

	@Column(columnDefinition = "varchar(32) comment '对应导入试题的文档的id,试题审核的入口程序' ")
	private String quesDocId;

	@Column(columnDefinition = "int default 1 comment '审核状态: 0:未审核 1:已审核' ")
	private Integer auditStatus = 1;

}
